package com.jzl.canal_consumer.bean;

import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * DML操作转换对象
 *
 * @author rewerma 2018-8-19 下午11:30:49
 * @version 1.0.0
 */
@Data
public class FlatDml implements Serializable
{

    private static final long serialVersionUID = 2611556444074013268L;
    /**
     * 对应canal的实例或者MQ的topic
     */
    private String destination;
    /**
     * 数据库或schema
     */
    private String database;
    /**
     * 表名
     */
    private String table;
    /**
     * 类型: INSERT UPDATE DELETE
     */
    private String type;
    // binlog executeTime
    /**
     * 执行耗时
     */
    private Long es;
    // dml build timeStamp
    /**
     * 同步时间
     */
    private Long ts;
    /**
     * 执行的sql, dml sql为空
     */
    private String sql;
    /**
     * 数据列表
     */
    private List<Map<String, Object>> data;
    /**
     * 旧数据列表, 用于update, size和data的size一一对应
     */
    private List<Map<String, Object>> old;
}
